<template>
  <div id="app">
		<div class="todo-container">
			<div class="todo-wrap">
				<HeaderTest :addtodo="addtodo"/>
				<ListTest :todos="todos"
				:checktodo="checktodo"
				:deletetodo="deletetodo"/>
				<FooterTest :todos="todos"
				:checkalltodo="checkalltodo"
				:clearalltodo="clearalltodo"/>
			</div>
		</div>
  </div>
</template>

<script>
import HeaderTest from './components/HeaderTest'
import ListTest from './components/ListTest'
import FooterTest from './components/FooterTest'
export default {
  name: 'App',
  data(){
       return{
           todos:[
            {id:'001',title:'吃饭',done:true},
            {id:'002',title:'玩',done:false},
            {id:'003',title:'看电视',done:true}
           ]
       } 
    },
  components: {
      ListTest,
      HeaderTest,
      FooterTest,
  },
  methods:{
	addtodo(x){
		console.log("=app收到=",x)
		this.todos.unshift(x);
	},
	checktodo(id){
		this.todos.forEach((todo)=>{
			if(todo.id===id) todo.done=!todo.done
		})
	},
	deletetodo(id){
		this.todos=this.todos.filter((todo)=>{
			return todo.id!=id
		})
	},
	checkalltodo(done){
		this.todos.forEach((todo)=>{
			todo.done=done;
		})
	},
	//清除所有已近完成的todo
	clearalltodo(){
		this.todos=this.todos.filter((todo)=>{
			return !todo.done
		})
	}
  },
}
</script>

<style>
/*base*/
	body {
		background: #fff;
	}
	.btn {
		display: inline-block;
		padding: 4px 12px;
		margin-bottom: 0;
		font-size: 14px;
		line-height: 20px;
		text-align: center;
		vertical-align: middle;
		cursor: pointer;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
		border-radius: 4px;
	}
	.btn-danger {
		color: #fff;
		background-color: #da4f49;
		border: 1px solid #bd362f;
	}
	.btn-danger:hover {
		color: #fff;
		background-color: #bd362f;
	}
	.btn:focus {
		outline: none;
	}
	.todo-container {
		width: 600px;
		margin: 0 auto;
	}
	.todo-container .todo-wrap {
		padding: 10px;
		border: 1px solid #ddd;
		border-radius: 5px;
	}

</style>
